<?php
class RolPermiso extends CI_Controller {
		
		function RolPermiso () {
			parent::__construct();
			
			$this->load->helper('url');
			$this->load->helper('form');
			

		}
		
		function index () {
			$data['title']='Rol Permiso';
			$data['heading']='Agregar Rol Permiso';
			
			$data['result']= $this->getAllOrderBy('id');
			$rol=new Entities\Rol;
			$permiso=new Entities\Permiso;
			
			$rolpermiso = new Entities\RolPermiso;
			$rolpermiso->setIdrol($rol);
			$rolpermiso->setIdpermiso($permiso);
			
			$data['registro']=$rolpermiso;
			
			
			$data['action']='agregar';
			$data['submit']='Agregar';
			$this -> load -> view('rolpermiso_view',$data);
		}
		
		public function getAll()
		{
		    $rolpermisos = $this->doctrine->em->getRepository('Entities\RolPermiso')->findAll();
			return $rolpermisos;
		}
		
		public function getAllOrderBy($orden)
		{
		    //
		    $permisos = $this->doctrine->em->createQuery('SELECT p FROM Entities\RolPermiso p ORDER BY p.'. $orden .' ASC')->getResult(); 
			return $permisos;
		}
		
		public function remove ($id)
		{
			$rolpermiso = $this->doctrine->em->find('Entities\RolPermiso',$id);
			$this->doctrine->em->remove($rolpermiso);
			$this->doctrine->em->flush();
			redirect('rolpermiso');
		}
		
		public function agregar()
		{
			$rolpermiso = new Entities\RolPermiso;
			$rol =$this->doctrine->em->find('Entities\Rol',$_POST["tx_rol"]);
			$rolpermiso->setIdrol($rol);
			$permiso=$this->doctrine->em->find('Entities\Permiso',$_POST["tx_permiso"]);
    		$rolpermiso->setIdpermiso($permiso);
		
    		$this->doctrine->em->persist($rolpermiso);
    		$this->doctrine->em->flush();
    		redirect('rolpermiso');
 
		}
		
		public function editar ($id)
		{
			$rolpermiso = $this->doctrine->em->find('Entities\RolPermiso',$id);
			$data['title']='Rol Permiso';
			$data['heading']='Actualizar Rol Permiso';
			
			$data['result']= $this->getAllOrderBy('id');
			$data['registro']=$rolpermiso;
			$data['action']='actualizar';
			$data['submit']='Actualizar';
			$this -> load -> view('rolpermiso_view',$data);
		}
		
		public function actualizar($id)
		{
			$rolpermiso = $this->doctrine->em->find('Entities\RolPermiso',$id);
			$rol =$this->doctrine->em->find('Entities\Rol',$_POST["tx_rol"]);
			$rolpermiso->setIdrol($rol);
			$permiso=$this->doctrine->em->find('Entities\Permiso',$_POST["tx_permiso"]);
    		$rolpermiso->setIdpermiso($permiso);
    		$this->doctrine->em->persist($rolpermiso);
    		$this->doctrine->em->flush();
    		redirect('rolpermiso');
		}
}
?>